package com.klangner.move.behavior
{
  import com.klangner.geom.Vector2D;
  
  public interface ISteeredObject{
    
    /**
    * This should be copy of vector object.
    * Don't use it to update object position.
    */
    function get position():Vector2D;

    /**
    * This should be copy of velocity object.
    * Don't use it to update object velocity.
    */
    function get velocity():Vector2D;

    /**
    * Set desired velocity.
    * Object can apply some inertia to this parametr.
    * this vector should be normalized. It meanss that length <= 1, where 1 is max speed
    */
    function setDesiredVelocity(desiredVelocity:Vector2D):void;
  }
}
